// pages/login/login.js
import request from "../../utils/request"
Page({

  /**
   * 页面的初始数据
   */
  data: {
    phone:"",
    password:""
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },
  handleInput(event){
    //通过id的方式进行分流
    // let type  = event.currentTarget.id;
    // this.setData({
    //   [type]:event.detail.value
    // })
    //通过自定义属性的方式进行分流
    let dataType = event.currentTarget.dataset.type;
    this.setData({
      [dataType]:event.detail.value
    })
  },
  /**
   * 1.前端认证 
   *  手机号 密码 不能为空
   *  填写正确的手机号
   * 2.后端认证
   *  1.code 400 手机号错误
   *  2.code 502 密码错误
   *  3.code 200 登录成功
   *  是否有此手机号
   *  密码是否正确
   */
  async login(){
    const {phone,password} = this.data;
    if(!phone){
      wx.showToast({
        title: '手机号不能为空',
        icon: 'none'
      })
      return;
    }
    if(!password){
      wx.showToast({
        title: '密码不能为空',
        icon: 'none'
      })
      return;
    } 
    //手机号正则
    let reg = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/
    if(!reg.test(phone)){
      wx.showToast({
        title: '手机号格式错误',
        icon: 'none'
      })
      return;
    }

    //后端认证
    let result = await request("/login/cellphone",{phone,password,isLogin:true})

    if(result.code === 200){
      wx.showToast({
        title: '登录成功'
      })
      //将用户信息保存到本地
      wx.setStorageSync('profile',JSON.stringify(result.profile))

      wx.reLaunch({
        url: '/pages/personal/personal',
      })
    }
    else if(result.code === 400){
      wx.showToast({
        title: '手机号码错误',
        icon:"none"
      })
    }
    else if(result.code === 502){
      wx.showToast({
        title:"密码错误",
        icon:"none"
      })
    }
   else{
      wx.showToast({
        title: '登录失败，请重新登录',
        icon: 'none'
      })
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})